Theo Marsh

Halfmoon

2024 · Maintained

Halfmoon turns a folder of markdown into a folder of HTML. That is the whole description. It has no plugin system, no themes, no configuration file beyond a dozen lines, and no way to extend it other than editing it.

Why write another one

I did not want a better generator. I wanted one I could hold entirely in my head, because every time a build broke on a tool I did not understand, the site went unwritten for a fortnight while I worked out why. Six hundred lines is small enough that the answer is always findable in an afternoon.

The one clever part

Templates are Go templates with exactly one addition: a related function that takes a post and returns others sharing a tag, sorted by how many they share. It is nine lines and it is the only thing in the codebase I would call a feature rather than a mechanism. Everything else is a loop over files.

Should you use it

Almost certainly not. Use something maintained by more than one person. Write your own if you want the same thing I wanted, which was not a better tool but a legible one.

Role
Design and build
Year
2024
Built with
Go, Markdown
Status
Maintained

Other projects

All five projects